home *** CD-ROM | disk | FTP | other *** search
-
-
-
- RRRRWWWWTTTTPPPPttttrrrrMMMMuuuullllttttiiiiMMMMaaaappppIIIItttteeeerrrraaaattttoooorrrr((((3333CCCC++++++++)))) RRRRWWWWTTTTPPPPttttrrrrMMMMuuuullllttttiiiiMMMMaaaappppIIIItttteeeerrrraaaattttoooorrrr((((3333CCCC++++++++))))
-
-
-
- NNNNaaaammmmeeee
- RWTPtrMultiMapIterator<K,T,C> - Rogue Wave library class
-
- SSSSyyyynnnnooooppppssssiiiissss
- #include<rw/tpmmap.h>
-
-
-
- RWTPtrMultiMap<K,T,C> map;
- RWTPtrMultiMapIterator<K,T,C> itr(map);
-
- SSSSttttaaaannnnddddaaaarrrrdddd CCCC++++++++ LLLLiiiibbbbrrrraaaarrrryyyy DDDDeeeeppppeeeennnnddddeeeennnntttt!!!!
- RRRRWWWWTTTTPPPPttttrrrrMMMMuuuullllttttiiiiMMMMaaaappppIIIItttteeeerrrraaaattttoooorrrr requires the Standard C++ Library.
-
-
- DDDDeeeessssccccrrrriiiippppttttiiiioooonnnn
- RRRRWWWWTTTTPPPPttttrrrrMMMMuuuullllttttiiiiMMMMaaaappppIIIItttteeeerrrraaaattttoooorrrr is supplied with Tools 7 to provide an iterator
- interface to the new Standard Library based collections with backward
- compatibility to the Tools 6 container iterators. The order of iteration
- over an RRRRWWWWTTTTPPPPttttrrrrMMMMuuuullllttttiiiiMMMMaaaapppp is dependent on the comparator object of the
- container as applied to the key values of the stored associations. The
- current item referenced by this iterator is undefined after construction
- or after a call to rrrreeeesssseeeetttt(((()))). The iterator becomes valid after being
- advanced with either a preincrement or ooooppppeeeerrrraaaattttoooorrrr(((()))). For both ooooppppeeeerrrraaaattttoooorrrr++++++++
- and ooooppppeeeerrrraaaattttoooorrrr(((()))), iterating past the last element will return a value
- equivalent to boolean ffffaaaallllsssseeee. Continued increments will return a value
- equivalent to ffffaaaallllsssseeee until rrrreeeesssseeeetttt(((()))) is called.
-
- PPPPeeeerrrrssssiiiisssstttteeeennnncccceeee
- None
-
- EEEExxxxaaaammmmpppplllleeeessss
- #include<rw/tpmmap.h>
-
-
-
- #include<iostream.h>
- #include<rw/cstring.h>
- #include<utility>
-
-
- int main(){
-
-
-
- RWTPtrMultiMap<RWCString,int,less<RWCString> > age;
- RWTPtrMultiMapIterator<RWCString,int,less<RWCString> > itr(age);
-
-
- age.insert(new RWCString("John"), new int(30));
-
-
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-
-
-
- RRRRWWWWTTTTPPPPttttrrrrMMMMuuuullllttttiiiiMMMMaaaappppIIIItttteeeerrrraaaattttoooorrrr((((3333CCCC++++++++)))) RRRRWWWWTTTTPPPPttttrrrrMMMMuuuullllttttiiiiMMMMaaaappppIIIItttteeeerrrraaaattttoooorrrr((((3333CCCC++++++++))))
-
-
-
- age.insert(new RWCString("Steve"),new int(17));
- age.insert(new RWCString("Mark"), new int(24));
- age.insert(new RWCString("Steve"),new int(24));
-
-
- for(;itr();)
-
-
-
- cout << *itr.key() << "'s age is " << *itr.value() << endl;
-
-
-
- return 0;
-
-
-
- }
- Program Output
- John's age is 30
- Mark's age is 24
- Steve's age is 17
- Steve's age is 24
-
- PPPPuuuubbbblllliiiicccc CCCCoooonnnnssssttttrrrruuuuccccttttoooorrrrssss
- RRRRWWWWTTTTPPPPttttrrrrMMMMuuuullllttttiiiiMMMMaaaappppIIIItttteeeerrrraaaattttoooorrrr<<<<KKKK,,,,TTTT,,,,CCCC>>>>(const RWTPtrMultiMap<K,T,C>& m);
-
-
- Creates an iterator for the multimap mmmm. The iterator begins in an
- undefined state and must be advanced before the first element will be
- accessible
-
- PPPPuuuubbbblllliiiicccc MMMMeeeemmmmbbbbeeeerrrr OOOOppppeeeerrrraaaattttoooorrrrssss
- K*
- ooooppppeeeerrrraaaattttoooorrrr(((())))();
-
-
- Advances self to the next element, dereferences the resulting iterator
- and returns its key. If the iterator has advanced past the last item in
- the container, the element returned will be a nnnniiiillll pointer equivalent to
- boolean ffffaaaallllsssseeee.
-
- RWBoolean
- ooooppppeeeerrrraaaattttoooorrrr++++++++();
-
-
- Advances self to the next element. If the iterator has been reset or
- just created self will now reference the first element. If, before
- iteration, self referenced the last association in the multimap, self
- will now point to an undefined value and a value equivalent to ffffaaaallllsssseeee will
- be returned. Otherwise, a value equivalent to ttttrrrruuuueeee is returned. Note: no
-
-
-
-
- PPPPaaaaggggeeee 2222
-
-
-
-
-
-
- RRRRWWWWTTTTPPPPttttrrrrMMMMuuuullllttttiiiiMMMMaaaappppIIIItttteeeerrrraaaattttoooorrrr((((3333CCCC++++++++)))) RRRRWWWWTTTTPPPPttttrrrrMMMMuuuullllttttiiiiMMMMaaaappppIIIItttteeeerrrraaaattttoooorrrr((((3333CCCC++++++++))))
-
-
-
- post-increment operator is provided.
-
- PPPPuuuubbbblllliiiicccc MMMMeeeemmmmbbbbeeeerrrr FFFFuuuunnnnccccttttiiiioooonnnnssss
- RWTPtrMultiMap<K,T,C>*
- ccccoooonnnnttttaaaaiiiinnnneeeerrrr(((()))) const;
-
-
- Returns a pointer to the collection being iterated over.
-
- K*
- kkkkeeeeyyyy() const;
-
-
- Returns the key portion of the association currently referenced by sssseeeellllffff.
- Undefined if self is not referencing a value within the multimap.
-
- void
- rrrreeeesssseeeetttt();
- void
- rrrreeeesssseeeetttt(RWTPtrMultiMap<K,T,C>& h);
-
-
- Resets the iterator so that after being advanced it will reference the
- first element of the collection. Using rrrreeeesssseeeetttt(((()))) with no argument will
- reset the iterator on the current container. Supplying a RRRRWWWWTTTTPPPPttttrrrrMMMMuuuullllttttiiiiMMMMaaaapppp
- to rrrreeeesssseeeetttt(((()))) will reset the iterator on that container.
-
- T*
- vvvvaaaalllluuuueeee();
-
-
- Returns the value portion of the association referenced by sssseeeellllffff.
- Undefined if self is not referencing a value within the multimap.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 3333
-
-
-
-